home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / rbbs_pc / ugly174.zip / RSB5UGLY.MRG < prev    next >
Text File  |  1992-07-05  |  43KB  |  1,057 lines

  1. * ------------[ BLED merge (c) Ken Goosens ]-------------
  2. * Merge this against RELEASE\RBBSSUB5.BAS to produce RBBSSUB5.BAS
  3. * RELEASE\RBBSSUB5.BAS:  Date 6-20-1992  Size 116575 bytes
  4. * ------------[ Created 07-04-1992 19:44:06 ]------------
  5. * REPLACING old line(s) by new
  6. 20120 ZOutTxt$ = "Scanning Directory " + _
  7.            ZFileNameHold$
  8.       IF WasRS$ <> "" THEN _
  9.          ZOutTxt$ = ZOutTxt$ + " for " + WasRS$
  10.       GOSUB 21650
  11.       IF ZFileSysParm > 1 THEN _
  12.          RETURN
  13.       CALL AskMore ("",ZTrue,ZTrue,ZAnsIndex,ZFalse)
  14.       IF ZNo THEN _
  15.          ZErrCode = 0 : _
  16. * ------[ first line different ]------
  17.          CALL SkipLine (1) : _                                       ' UG070501
  18.          RETURN
  19.       WasPG = ZTrue
  20. * REPLACING old line(s) by new
  21. 20122 CALL OpenWork (2,ZFileName$)
  22.       IF ZErrCode = 53 THEN _
  23.          ZOutTxt$ = "Missing File " + ZFileName$ : _
  24.          CALL UpdtCalr (ZOutTxt$,2) : _
  25.          ZOutTxt$ = ZOutTxt$ + _
  26. * ------[ first line different ]------
  27.               ".  Please tell SysOp." : _                            ' UG070501
  28.          GOSUB 21640 : _                                             ' UG070501
  29.          RETURN
  30.       ZJumpSupported = ZTrue
  31.       ZJumpLast$ = ""
  32.       LastOK = ZFalse
  33.       ZJumpSearching = ZFalse
  34.       MaxPrint = ZPageLength - 1
  35.       CALL CmdStackPushPop (1)
  36.       ZLastIndex = 0
  37. * REPLACING old line(s) by new
  38. 20140 LastOK = ZTrue
  39.       GOSUB 21650
  40.       IF ZFileSysParm > 1 THEN _
  41.          RETURN
  42.       IF ZLinesPrinted > MaxPrint THEN _
  43.          ZTurboKey = -ZTurboKeyUser : _
  44.          CALL AskMore (",M)ark",ZTrue,ZTrue,ZAnsIndex,ZFalse) : _
  45.          IF ZNo THEN _
  46. * ------[ first line different ]------
  47.             CALL SkipLine (1) : _                                    ' UG070501
  48.             ZErrCode = 0 : _
  49.             RETURN _
  50.          ELSE Temp$ = ZUserIn$(1) : _
  51.               CALL AskItems ("M",Temp$,ZTrue,"File",ZMarkedFiles$) : _ ' UG070501
  52.               ZUserIn$(1) = ""
  53.       IF ZJumpSearching THEN _
  54.          IF LEFT$(ZOutTxt$,1) <> " " THEN _
  55.             PrevSearch$ = WasRS$ : _
  56.             PrevCK = WasCK : _
  57.             WasCK = 2 : _
  58.             WasRS$ = ZJumpTo$
  59.       IF NOT ZRet THEN _
  60.          GOTO 20124
  61. * REPLACING old line(s) by new
  62. 20142 ZWasQ = 0
  63. * ------[ first line different ]------
  64.       CALL SkipLine (1)                                              ' UG070501
  65.       CALL CmdStackPushPop (2)
  66.       ZJumpSupported = ZFalse
  67.       CLOSE 2
  68.       CALL Carrier
  69.       IF ZSubParm = -1 THEN _
  70.          ZFileSysParm = 7
  71.       RETURN
  72. '
  73. ' *  L - COMMAND FROM FILES MENU (LIST DIRECTORY)
  74. '
  75. * REPLACING old line(s) by new
  76. * ------[ first line different ]------
  77. 20155 IF ListNew OR ZAnsIndex > 255 THEN                             ' UG070501
  78.          IF ZSearchingAll THEN CALL SkipLine (1)                     ' UG070501
  79.          RETURN                                                      ' UG070501
  80.       END IF
  81.       CALL GetDirs (ShowDirOfDir)
  82.       IF ZWasQ = 0 THEN _
  83.          RETURN
  84.       ShowDirOfDir = ZFalse
  85.       CALL ConvertDir (ZAnsIndex)
  86.       WasQX = ZLastIndex
  87. * REPLACING old line(s) by new
  88. 20159 IF ZAnsIndex < ZLastIndex THEN _
  89.          GOTO 20155
  90.       ZSearchingAll = ZFalse
  91.       CALL CmdStackPushPop (1)
  92.       ZLastIndex = 0
  93.       IF ZNo OR InFMS OR (ZFileNameHold$ = ZDirPrefix$) THEN _
  94.          GOTO 20155
  95.       GOSUB 20178
  96.       CALL QuickTPut (ZEmphasizeOff$,0)
  97.       ZTurboKey = - ZTurboKeyUser
  98. * ------[ first line different ]------
  99.       ZOutTxt$ = "End List.  L)ist Again, M)ark, D)ownload, [Q]uit"  ' UG070501
  100.       GOSUB 21667
  101.       CALL AraAllCaps (ZUserIn$(),1)
  102.       IF ZUserIn$(1) = "L" THEN _
  103.          ZUserIn$(ZAnsIndex) = WasA1$ : _
  104.          GOTO 20161
  105.       Temp$ = ZUserIn$(1)
  106.       Temp = (ZUserIn$(1) = "D")
  107.       CALL AskItems ("MD",Temp$,ZTrue,"File",ZMarkedFiles$)          ' UG070501
  108.       IF ZWasQ = 0 OR ZUserSecLevel < ZOptSec(19 - 20 * (ZMenuIndex = 6)) THEN _
  109.          GOTO 20160
  110.       IF Temp THEN _
  111.          GOSUB 20202 _
  112.       ELSE IF LEN(ZUserIn$(1)) > 1 THEN _
  113.          ZAnsIndex = 1 : _
  114.          GOSUB 20202
  115. * REPLACING old line(s) by new
  116. 20162 CALL CmdStackPushPop (1)         ' save dir list list processing
  117.       CALL FMS (ZWasZ$,SearchString$,SearchDate$,InFMS, _
  118.                 ZCategoryName$(),ZCategoryCode$(),ZCategoryDesc$(),_
  119.                 DnldFlag,CatFound,ZAnsIndex)
  120.       WHILE DnldFlag > 0 AND ZSubParm > -1
  121.          GOSUB 20202
  122.          IF ZFileSysParm > 1 THEN _
  123.             RETURN
  124.          WasX$ = ZCategoryCode$(CatFound)
  125.          CALL DispUpDir (WasX$,SearchString$,SearchDate$,DnldFlag,ZAnsIndex)
  126.          CALL CheckTimeRemain (MinsRemaining)
  127.          IF ZSubParm = -1 THEN _
  128.             ZFileSysParm = 6 : _
  129.             RETURN
  130.          CALL Carrier
  131.       WEND
  132.       IF ZSubParm = -1 THEN _
  133.          ZFileSysParm = 7 : _
  134.          RETURN
  135.       IF ZAnsIndex > 255 OR ZRet THEN _
  136.          ZLastIndex = 0 : _
  137.          RETURN
  138.       CALL CmdStackPushPop (2)        ' restore dir list list processing
  139.       ZActiveFMSDir$ = ""
  140.       IF InFMS THEN _
  141.          GOTO 20159
  142.       IF ZUserSecLevel < ZMinSecToView THEN _
  143.          IF ZFileNameHold$ = ZUpldDirCheck$ THEN _
  144. * ------[ first line different ]------
  145.             ZFileNameHold$ = "of Uploads" : _                        ' UG070501
  146.             GOTO 20172
  147.       ZFileNameHold$ = ZUserIn$(ZAnsIndex)
  148.       IF ZLimitSearchToFMS THEN _
  149.          GOTO 20166
  150.       IF NOT ZSearchingAll THEN _
  151.          IF ZFileNameHold$ = "ALL" OR ZFileNameHold$ = "A" THEN _
  152.             ZSearchingAll = ZTrue : _
  153.             GOSUB 21890 : _
  154.             GOTO 20157
  155.       CALL BadFile (ZFileNameHold$,BadFileNameIndex)
  156.       ON BadFileNameIndex GOTO 20163,20172,20176
  157. * REPLACING old line(s) by new
  158. 20172 IF NOT ZSearchingAll THEN _
  159.          ZOutTxt$ = "Directory " + _
  160.               ZFileNameHold$ + _
  161. * ------[ first line different ]------
  162.               " Not Found." : _                                      ' UG070501
  163.          GOSUB 21640 : _
  164.          ZNo = ZTrue : _
  165.          IF ZFileSysParm > 1 THEN _
  166.             RETURN
  167.       GOTO 20155
  168. * REPLACING old line(s) by new
  169. 20180 Temp$ = "D"
  170. * ------[ first line different ]------
  171.       CALL AskItems ("D",Temp$,ZFalse,"File",ZMarkedFiles$)          ' UG070501
  172.       GOSUB 20178
  173.       IF ZFileSysParm > 1 THEN _
  174.          RETURN
  175.       IF ZWasQ = 0 THEN _
  176.          RETURN
  177. * REPLACING old line(s) by new
  178. 20205 MarkingTime = (ZAnsIndex = FirstDnld OR NOT ZConcatFIles)
  179. * ------[ first line different ]------
  180.       CALL AllCaps (ZUserIn$(ZAnsIndex))                             ' UG070501
  181.       ZFileName$ = ZUserIn$(ZAnsIndex)
  182.       CALL Remove (ZFileName$,", ")
  183.       ZViolation$ = "Download "
  184.       IF ZListOnly THEN _
  185.          CALL BreakFileName (ZFileName$,DR$,ZWasY$,WasX$,ZTrue) : _
  186.          ZFileNameHold$ = ZWasY$ + _
  187.                            WasX$ : _
  188.          GOTO 20235
  189.       ZFileNameHold$ = ZFileName$
  190.       CALL BadFile (ZFileName$,BadFileNameIndex)
  191.       ON BadFileNameIndex GOTO 20220,20231,20233
  192. * REPLACING old line(s) by new
  193. 20231 ZOutTxt$ = ZFileNameHold$ + _
  194. * ------[ first line different ]------
  195.            " Not Found"                                              ' UG070501
  196.       CALL UpdtCalr (ZOutTxt$,2)
  197.       IF ZAutoDownInProgress THEN _
  198.          ZOutTxt$ = ZOutTxt$ + _
  199.               " During AutoDownload." : _                            ' UG070501
  200.          GOSUB 21640 : _
  201.          RETURN
  202.       ZOutTxt$ = ZOutTxt$ + _
  203.            ".  Enter the Correct Filename"+ZPressEnterExpert$        ' UG070501
  204.       ZSuspendAutoLogoff = ZTrue
  205.       GOSUB 21660
  206.       ZSuspendAutoLogoff = ZFalse
  207.       IF ZFileSysParm > 1 THEN _
  208.          RETURN
  209.       IF ZWasQ=0 THEN _
  210.          IF ZBatchTransfer AND ZAnsIndex >= LastDnld THEN _
  211.             GOTO 20262 _
  212.          ELSE ZAutoLogOffReq = ZFalse : _
  213.               RETURN
  214.       ZUserIn$(ZAnsIndex) = ZUserIn$(1)
  215.       GOTO 20205
  216. * REPLACING old line(s) by new
  217. 20244 IF ZUserSecLevel < VAL(ZWorkAra$(2)) THEN _
  218.          GOTO 20245
  219.       FilePswd$ = ZWorkAra$(3)
  220.       IF FilePswd$ = "" THEN _
  221.          GOTO 20247
  222.       CALL AllCaps (FilePswd$)
  223.       IF FilePswd$ = ZPswd$ THEN _
  224.          GOTO 20247
  225. * ------[ first line different ]------
  226.       ZOutTxt$ = "Enter a Password for " + _                         ' UG070501
  227.            ZFileName$
  228.       GOSUB 21660
  229.       IF ZFileSysParm > 1 THEN _
  230.          RETURN
  231.       IF ZWasQ = 0 THEN _
  232.          RETURN
  233.       CALL AraAllCaps (ZUserIn$(),1)
  234.       IF ZUserIn$(1) = FilePswd$ THEN _
  235.          GOTO 20247
  236. * REPLACING old line(s) by new
  237. 20247 ZWasDF = 0
  238.       CALL BreakFileName (ZFileName$,DR$,WasX$,Extension$,ZFalse)
  239.       IF ZAutoDownInProgress THEN _
  240.          ZUserIn$(ZAnsIndex) = WasX$ + "." + Extension$ : _
  241. * ------[ first line different ]------
  242.          ZOutTxt$ = "Transferring: " + _                             ' UG070501
  243.               ZUserIn$(ZAnsIndex) : _
  244.          GOSUB 21640 : _
  245.          IF ZFileSysParm > 1 THEN _
  246.             RETURN
  247.       IF INSTR("...WRK.FW .ARC.EXE.COM.OBJ.WKS.LBR.ZIP.PAK.ZOO.LZH.ARJ.","."+Extension$+".") > 2 OR _
  248.          MID$(Extension$,2,1) = "Q" OR _
  249.          (ZRequireNonASCII AND Extension$ = "BAS") THEN _
  250.             ZWasDF = ZTrue
  251. * REPLACING old line(s) by new
  252. 20248 ZOutTxt$ = ""
  253.       IF ZBatchTransfer THEN _
  254.          IF ZAnsIndex < LastDnld THEN _
  255.             GOTO 20260
  256.       CALL XferType (2,ZTrue)
  257.       IF ZFF THEN _
  258.          GOTO 20260
  259. * ------[ first line different ]------
  260.       CALL SkipLine (1)                                              ' UG070501
  261.       CALL XferType (1,ZTrue)
  262.       IF ZSubParm = -1 THEN _
  263.          ZFileSysParm = 7 : _
  264.          RETURN
  265. * REPLACING old line(s) by new
  266. 20292 GOSUB 20750
  267.       IF ZFileSysParm > 1 OR NOT ZOK THEN _
  268.          RETURN
  269. * ------[ first line different ]------
  270.       WasA1$ = "Send"                                                ' UG070501
  271.       GOSUB 20320
  272.       IF ZFileSysParm > 1 THEN _
  273.          RETURN
  274.       IF ZLocalUser THEN _
  275.          CALL QuickTPut2 ("Sorry, Protocol Not Available Locally.") : _ ' UG070501
  276.          RETURN
  277.       IF ZAutoDownInProgress THEN _
  278.          GOSUB 20294 : _
  279.          IF ZAbort THEN _
  280.             RETURN
  281.       GOSUB 21300
  282.       IF ZFileSysParm > 1 THEN _
  283.          RETURN
  284.       ZOutTxt$ = ""
  285.       GOTO 20390
  286. * REPLACING old line(s) by new
  287. * ------[ first line different ]------
  288. 20318 ZOutTxt$ = "Please Switch to N,8,1 for Transfer."
  289.       GOSUB 21630
  290.       IF ZFileSysParm > 1 THEN _
  291.          RETURN
  292.       CALL DelayTime (3)
  293.       RETURN
  294. * REPLACING old line(s) by new
  295. 20330 IF ZAutoDownInProgress THEN _
  296.          RETURN
  297.       GOSUB 20337
  298. * ------[ first line different ]------
  299.       ZOutTxt$ = "Protocol     : " + ZProtoPrompt$                   ' UG070501
  300.       GOSUB 21640                                                    ' UG070501
  301.       ZOutTxt$ = "Ready to " + WasA1$ + " " + ZFileNameHold$ + ", ^X Aborts." ' UG070501
  302.       GOSUB 21650
  303. * REPLACING old line(s) by new
  304. 20340 IF ZWasDF THEN _
  305. * ------[ first line different ]------
  306.          ZOutTxt$ = "ASCII Protocol Can't Transfer Binary Files." : _  ' UG070501
  307.          GOSUB 21650 : _
  308.          GOTO 21700
  309.       GOSUB 20750
  310.       IF ZFileSysParm > 1 OR NOT ZOK THEN _
  311.          RETURN
  312.       CALL OpenWork (2,ZFileName$)
  313.       IF (ZAnsIndex = FirstDnld OR NOT ZConcatFIles) THEN _
  314.          GOSUB 20337 : _
  315.          ZOutTxt$ = "Press ^X to Abort, ^S to Pause (^Q to Resume)" : _ ' UG070501
  316.          GOSUB 21640 : _
  317.          IF ZFileSysParm > 1 THEN _
  318.             RETURN _
  319.          ELSE ZOutTxt$ = ZProtoPrompt$ + " Send of " + _
  320.               ZFileNameHold$ + _
  321.               " Ready.  Press a Key to Start" : _                    ' UG070501
  322.          ZTurboKey = 2 : _
  323.          ZForceKeyboard = ZTrue : _
  324.          ZSuspendAutologoff = ZTrue : _
  325.          GOSUB 21660 : _
  326.          ZSuspendAutologoff = ZFalse : _
  327.          GOSUB 20335 : _
  328.          IF ZFileSysParm > 1 THEN _
  329.             RETURN
  330. * REPLACING old line(s) by new
  331. 20395 GOSUB 21640
  332.       IF ZFileSysParm > 1 THEN _
  333.          RETURN
  334. * ------[ first line different ]------
  335.       ZOutTxt$ = "Enter the Correct Name of the File to Upload" + _  ' UG070501
  336.            ZPressEnterExpert$
  337.       GOSUB 21660
  338.       IF ZFileSysParm > 1 THEN _
  339.          RETURN
  340.       IF ZWasQ = 0 THEN _
  341.          RETURN
  342.       ZUserIn$(ZAnsIndex) = ZUserIn$(1)
  343.       GOTO 20435
  344. * REPLACING old line(s) by new
  345. * ------[ first line different ]------
  346. 20420 ZOutTxt$ = "Upload What Files" + ZPressEnter$                  ' UG070501
  347.       GOSUB 21667
  348.       RETURN
  349. '
  350. ' *  SEARCH FOR DUPLICATE FILENAME
  351. '
  352. * REPLACING old line(s) by new
  353. * ------[ first line different ]------
  354. 20435 CALL AllCaps (ZUserIn$(ZAnsIndex))                             ' UG070501
  355.       ZFileNameHold$ = ZUserIn$(ZAnsIndex)                           ' UG070501
  356.       ExtSrch = ZFalse
  357.       IF INSTR(ZFileNameHold$,".") = 0 THEN _
  358.          ZFileNameHold$ = ZFileNameHold$ + "." + ZDefaultExtension$
  359.       CALL AllCaps(ZFileNameHold$)
  360.       ZFileName$ = ZFileNameHold$
  361.       ZViolation$ = "Upload "
  362.       CALL NoPath (ZFileName$,BadFileNameIndex)
  363.       IF BadFileNameIndex THEN _
  364.          GOTO 20451
  365.       CALL BadFile (ZFileName$,BadFileNameIndex)
  366.       ON BadFileNameIndex GOTO 20440,20451,20515
  367. * REPLACING old line(s) by new
  368. * ------[ first line different ]------
  369. 20451 ZOutTxt$ = "Invalid File Name."                                ' UG070501
  370.       GOTO 20395
  371. * REPLACING old line(s) by new
  372. 20452 IF ZUserSecLevel < ZOverWriteSecLevel THEN _
  373.          GOTO 20453
  374.       IF ExtSrch AND (WasX$ + "." + Check$) <> ZFileName$ THEN _
  375. * ------[ first line different ]------
  376.          ZOutTxt$ = "Warning: " + _
  377.                     WasX$ + "." + Check$ + " is Already Here, " + _
  378.                     "Upload Anyway (Y,[N])" _                        ' UG070501
  379.       ELSE ZOutTxt$ = "Overwrite This File (Y,[N])"                  ' UG070501
  380.       GOSUB 21660
  381.       IF ZFileSysParm > 1 THEN _
  382.          RETURN
  383.       IF NOT ZYes THEN _
  384.          GOTO 20453
  385.       ZWasZ$ = ZFileName$
  386.       CALL KillWork (ZFileName$)
  387.       IF ZErrCode <> 0 AND ZErrCode <> 53 THEN _
  388.          ZOutTxt$ = "Error Overwriting File." : _                    ' UG070501
  389.          GOSUB 21660 : _
  390.          RETURN
  391.       GOTO 20475
  392. * REPLACING old line(s) by new
  393. * ------[ first line different ]------
  394. 20454 CALL QuickTput2 ("Thanks, But " + ZFileNameHold$ + " is Already Here." ) ' UG070501
  395.       CALL UpdtCalr ("Upload duplicate " + ZFileNameHold$,1)
  396.       RETURN
  397. * REPLACING old line(s) by new
  398. * ------[ first line different ]------
  399. 20455 ZOutTxt$ = "Add a New File Directory Entry (Y,[N])"            ' UG070501
  400.       ZTurboKey = - ZTurboKeyUser
  401.       GOSUB 21660
  402.       IF ZFileSysParm > 1 THEN _
  403.          RETURN
  404.       IF NOT ZYes THEN _
  405.          RETURN
  406.       GOSUB 20460
  407.       IF WhoTo$ = "" THEN _
  408.          RETURN
  409.       AddingDescOnly = ZTrue
  410.       ZWasFT$ = "l"
  411.       GOSUB 20702
  412.       RETURN
  413. * REPLACING old line(s) by new
  414. * ------[ first line different ]------
  415. 20475 CALL SkipLine (1)                                              ' UG070501
  416.       ZWasZ$ = ZUpldDriveFile$                                       ' UG070501
  417.       CALL FindFree
  418.       IF VAL(ZFreeSpace$) < 4096 THEN _
  419.          GOSUB 21895 : _
  420.          IndexSave = ZLastIndex + 1 : _
  421.          RETURN
  422.       ZOutTxt$ = "Upload Disk has" + _                               ' UG070501
  423.            ZFreeSpace$
  424.       GOSUB 21640
  425.       IF ZFileSysParm > 1 THEN _
  426.          RETURN
  427.       ZLine25$ = "(U) " + _
  428.                  ZFileNameHold$
  429.       ZSubParm = 2
  430.       CALL Line25
  431.       ZOutTxt$ = ""
  432.       ZOK = ZTrue
  433. * REPLACING old line(s) by new
  434. * ------[ first line different ]------
  435. 20510 WasD$ = "<Esc> by SysOp Aborts"                                ' UG070501
  436.       GOSUB 21710
  437.       RETURN
  438. * REPLACING old line(s) by new
  439. * ------[ first line different ]------
  440. 20542 WasA1$ = "Receive"                                             ' UG070501
  441.       GOSUB 20320
  442.       IF ZFileSysParm > 1 THEN _
  443.          RETURN
  444.       ZOK = ZTrue
  445.       GOSUB 20860
  446.       IF ZFileSysParm > 1 THEN _
  447.          RETURN
  448.       IF ZOK THEN _
  449.          GOTO 20700
  450.       GOTO 20730
  451. '
  452. ' *  ASCII UPLOAD
  453. '
  454. * REPLACING old line(s) by new
  455. 20560 LineACK = (ZDefaultLineACK$ <> "")
  456.       IF LineACK THEN _
  457. * ------[ first line different ]------
  458.          ZOutTxt$ = "Acknowledge Each Line ([Y],N)" : _              ' UG070501
  459.          ZTurboKey = - ZTurboKeyUser : _
  460.          LineACK = NOT ZNo : _
  461.          GOSUB 21660 : _
  462.          IF ZFileSysParm > 1 THEN _
  463.             RETURN
  464.       GOSUB 20337
  465.       CALL QuickTPut1 ("End the Transfer with a ^K")                 ' UG070501
  466.       CALL QuickTPut1 (ZProtoPrompt$+" Receive of " + ZFileNameHold$ + " Ready.") ' UG070501
  467.       ZOK = ZFalse
  468.       XOff = ZFalse
  469.       CALL OpenOutW(ZFileName$)
  470.       IF ZErrCode <> 0 AND ZErrCode <> 53 THEN _
  471.          ZWasEL = 20560 : _
  472.          GOTO 21900
  473.       GOSUB 20510
  474.       IF ZFileSysParm > 1 THEN _
  475.          RETURN
  476. * REPLACING old line(s) by new
  477. 20670 ZOutTxt$ = ZXOff$ + _
  478. * ------[ first line different ]------
  479.            "System Error, Upload Aborted.  Press ^K."                ' UG070501
  480. * REPLACING old line(s) by new
  481. 20702 CALL UpdtUpload (ZCategoryName$(),ZCategoryCode$(), ZLinesInMsg)
  482.       IF NOT ZGetExtDesc THEN _
  483.          ZPrivateDoor = ZFalse : _
  484.          GOTO 20710
  485. * ------[ first line different ]------
  486.       ZMsgHeader$ = "Ext. Description"                              ' UG070501
  487.       ZSysopComment = ZTrue
  488.       ZMaxMsgLines = ZMaxExtendedLines
  489.       WasLL = ZRightMargin
  490.       ZRightMargin = 30 + ZMaxDescLen
  491.       IF ZRightMargin > 74 THEN _
  492.          ZRightMargin = 74
  493.       ZFileSysParm = 5
  494.       RETURN
  495. * REPLACING old line(s) by new
  496. 20730 GOSUB 21780
  497. * ------[ first line different ]------
  498.       CALL QuickTPut2 ("Upload Aborted.")                            ' UG070501
  499.       LastUpld = 0
  500.       ZPrivateDoor = ZFalse
  501. * REPLACING old line(s) by new
  502. 20745 ZOutTxt$ = ZXOff$ + _
  503. * ------[ first line different ]------
  504.         "SysOp Aborted Upload.  Stop Your Transfer and Press ^K."    ' UG070501
  505.       GOTO 20675
  506. '
  507. ' *  CALCULATE DOWNLOAD TIME ESTIMATE
  508. '
  509. * REPLACING old line(s) by new
  510. 20760 IF ZErrCode <> 0 THEN _
  511. * ------[ first line different ]------
  512.          CALL QuickTPut1 ("System Error: Can't Open "+ZFileNameHold$) : _ ' UG070501
  513.          CALL UpdtCalr ("Unable to access "+ZFileName$,2) : _
  514.          ZOK = ZFalse : _
  515.          ZErrCode = 0 : _
  516.          ZBytesInFile# = 0 : _
  517.          RETURN
  518.       ZBytesInFile# = LOF(2)
  519.       ZNumDnldBytes! = LOF(2)
  520.       ZOK = ZTrue
  521.       IF SizeOnly THEN _
  522.          SizeOnly = ZFalse : _
  523.          RETURN
  524.       ZBlocksInFile# = MaxBlock
  525.       IF ZBatchTransfer THEN _
  526.          BatchBlocks# =  BatchBlocks# + ZBlocksInFile# : _
  527.          BatchBytes# = BatchBytes# + ZBytesInFile# : _
  528.          CALL OpenWorkA (ZNodeWorkFile$) : _
  529.          CALL PrintWorkA (ZFileName$) : _
  530.          ZDownFiles = ZDownFiles + 1 : _
  531.          CLOSE 2 : _
  532.          RETURN
  533.       ZDownFiles = 1
  534. * REPLACING old line(s) by new
  535. 20780 ZOutTxt$ = "File Size    :"
  536.       ZOK = ZTrue
  537.       IF ZBlockSize > 0 THEN _
  538.          ZOutTxt$ = ZOutTxt$ + _
  539.               STR$(FIX(ZBlocksInFile#)) + _
  540. * ------[ first line different ]------
  541.               " Blocks,"                                             ' UG070501
  542. * REPLACING old line(s) by new
  543. 20785 ZBlocksInFile# = ZBlocksInFile# / _
  544.          VAL(MID$("000003000450120024004800720096012001440168019203840", -4 * ZCBPS, 4))
  545.       ZBlocksInFile# = ZBlocksInFile# * ZFLen / ZSpeedFactor!
  546.       IF (ZAnsIndex > 1 AND ZConcatFIles) THEN _
  547.          RETURN
  548.       ZOutTxt$ = ZOutTxt$ + _
  549.            STR$(ZBytesInFile#) + _
  550. * ------[ first line different ]------
  551.            " Bytes"                                                  ' UG070501
  552.       GOSUB 21630                                                    ' UG070501
  553.       IF ZFileSysParm > 1 THEN _
  554.          RETURN
  555.       IF ZBytesInFile# < 1 THEN _
  556.          RETURN
  557. * REPLACING old line(s) by new
  558. 20790 ZSubParm = 2
  559.       CALL Line25
  560.       ZOutTxt$ = "Transfer Time:" + _
  561.          STR$(INT(ZBlocksInFile# / 60)) + _
  562. * ------[ first line different ]------
  563.          " Minutes," + _
  564.          STR$(INT(ZBlocksInFile# - (INT(ZBlocksInFile# / 60) * 60))) + _
  565.          " Seconds"                                                  ' UG070501
  566.       GOSUB 21650
  567.       IF ZFileSysParm > 1 THEN _
  568.          RETURN
  569. * REPLACING old line(s) by new
  570. 20791 CALL CheckTimeRemain (MinsRemaining)
  571.       IF ZSubParm = -1 THEN _
  572.          ZFileSysParm = 6 : _
  573.          RETURN
  574.       ZOK = ZTrue
  575.       Temp = ZExtraDnldTime
  576.       CALL ChkAddedTime (Temp)
  577.       Temp = MinsRemaining + Temp
  578.       ZWasA = INT(ZBlocksInFile# / 60) + 1
  579.       IF ZWasA <= Temp THEN _
  580.          GOTO 20793
  581.       ZOutTxt$ = "Not enough minutes left!  Need" + STR$(ZWasA) + _
  582.                  "  have" + STR$(Temp)
  583.       CALL UpdtCalr (ZOutTxt$,2)
  584. * ------[ first line different ]------
  585.       ZOutTxt$ = "Sorry, Not Enough Time Left (Only " + MID$(STR$(Temp),2) + _
  586.                  " Mins Left)"                                       ' UG070501
  587.       CALL SkipLine (1)                                              ' UG070501
  588.       CALL QuickTPut2 (ZOutTxt$)                                     ' UG070501
  589.       IF ZDownFiles < 2 THEN _
  590.          GOTO 20792
  591.       ZLastIndex = 0
  592.       ZOutTxt$ = "Edit Your Download List ([Y],N)"                   ' UG070501
  593.       ZTurboKey = - ZTurboKeyUser
  594.       GOSUB 21668
  595.       IF ZNo THEN _
  596.          LastDnld = 0 : _
  597.          GOTO 20792
  598.       Temp = 0
  599.       CALL OpenWork (2,ZNodeWorkFile$)
  600.       WHILE NOT EOF(2)
  601.          CALL ReadDir (2,1)
  602.          CALL BreakFileName (ZOutTxt$,DR$,ZWasY$,WasX$,ZTrue)
  603.          ZFileName$ = ZWasY$ + WasX$
  604.          ZOutTxt$ = "Still Download " + ZFileName$ + " (Y,[N])"      ' UG070501
  605.          ZTurboKey = - ZTurboKeyUser                                 ' UG070501
  606.          GOSUB 21669                                                 ' UG070501
  607.          IF ZYes THEN _
  608.             Temp = Temp + 1 : _
  609.             ZOutTxt$(Temp) = ZFileName$
  610.       WEND
  611.       CLOSE 2
  612.       CALL SkipLine (1)                                              ' UG070501
  613.       ZAnsIndex = 1
  614.       ReStart = (Temp > 0)
  615.       LastDnld = Temp
  616.       ZLastIndex = Temp
  617.       FOR WasX = 1 TO  Temp
  618.          ZUserIn$(WasX) = ZOutTxt$(WasX)
  619.       NEXT
  620. * REPLACING old line(s) by new
  621. 20793 IF ZRatioRestrict# > 0 THEN _
  622. * ------[ first line different ]------
  623.          CALL SkipLine (1) : _                                       ' UG070501
  624.          CALL QuickTPut ("New Transfer Statistics Will Be: ", 1) : _ ' UG070501
  625.          CALL CheckRatio (ZTrue) : _                                 ' UG070501
  626.          CALL SkipLine (1)                                           ' UG070501
  627.       RETURN
  628. * REPLACING old line(s) by new
  629. 21660 ZSubParm = 1
  630. * ------[ first line different ]------
  631.       CALL UglyTGet                                                  ' UG070501
  632. * REPLACING old line(s) by new
  633. * ------[ first line different ]------
  634. 21668 CALL UglyPopCmdStack                                           ' UG070501
  635.       GOTO 21665                                                     ' UG070501
  636. * INSERTING new line(s)
  637. 21669 CALL PopCmdStack                                               ' UG070501
  638.       GOTO 21665
  639. * REPLACING old line(s) by new
  640. 21760 GOSUB 21780
  641.       IF ZFileSysParm > 1 THEN _
  642.          RETURN
  643.       IF ZBatchTransfer THEN _
  644.          CALL LinesInFile (ZNodeWorkFile$,ZDownFiles) _
  645.       ELSE ZDownFiles = 1
  646.       IF NOT DnldCompleted THEN _
  647.          ZAutoLogoffReq = ZFalse : _
  648.          ZWasDF$ = " Aborted" : _
  649.          GOTO 21768
  650.       CALL LogPDown (ZPersonalDnld,1+ZAnsIndex-FirstDnld)
  651.       WasX = ((ZRatioRestrict# > 0) AND ZEnforceRatios AND ZFreeDnld)
  652.       IF NOT WasX THEN _
  653.          ZDnlds = ZDnlds + ZDownFiles : _
  654.          ZGlobalDLToday! = ZGlobalDLToday! + ZDownFiles : _
  655.          ZGlobalDnlds = ZGlobalDnlds + ZDownFiles : _
  656.          ZDLBytes! = ZDLBytes! + ZNumDnldBytes! : _
  657.          ZGlobalDLBytes! = ZGlobalDLBytes! + ZNumDnldBytes! : _
  658.          ZDLToday! = ZDLToday! + ZDownFiles : _
  659.          ZBytesToday! = ZBytesToday! + ZNumDnldBytes! : _
  660.          ZGlobalBytesToday! = ZGlobalBytesToday! + ZNumDnldBytes!
  661.       ZNumDnldBytes! = 0
  662.       CALL Muzak (6)
  663.       ZWasDF$ = " Downloaded"
  664. * ------[ first line different ]------
  665.       IF (ZAnsIndex = LastDnld OR NOT ZConcatFiles) THEN             ' UG070501
  666.          CALL SkipLine (1)                                           ' UG070501
  667.          CALL QuickTPut ("Download Complete",0)                      ' UG070501
  668.          ZOutTxt$ = "."                                              ' UG070501
  669.          IF WasX THEN                                                ' UG070501
  670.             ZOutTxt$ = ", But Not Counted Against Your Ratios."      ' UG070501
  671.          END IF                                                      ' UG070501
  672.          CALL QuickTPut2 (ZOutTxt$)                                  ' UG070501
  673.       END IF                                                         ' UG070501
  674. * REPLACING old line(s) by new
  675. * ------[ first line different ]------
  676. 21810 ZOutTxt$ = "Search for What Filename (Wildcards Allowed) or String" ' UG070501
  677.       ZMacroMin = 99
  678.       GOSUB 21668
  679.       IF ZWasQ = 0 THEN _
  680.          RETURN
  681. * REPLACING old line(s) by new
  682. 21862 WasA1$ = RIGHT$(ZWasLM$,4) +_
  683.             LEFT$(ZWasLM$,2)
  684. * ------[ first line different ]------
  685.       ZOutTxt$ = "New Files On/After What Date (MMDDYY) [S]ince for " + WasA1$ ' UG070501
  686.       GOSUB 21669                                                    ' UG070501
  687.       IF ZAnsIndex = 1 AND ZLastIndex <> 1 THEN _                    ' UG070501
  688.          CALL SkipLine (1)                                           ' UG070501
  689.       CALL AraAllCaps (ZUserIn$(),ZAnsIndex)
  690.       IF ZWasQ = 0 OR ZUserIn$(ZAnsIndex) = "S" THEN _
  691.          WasRS$ = ZWasLM$ : _
  692.          GOTO 21866
  693. * REPLACING old line(s) by new
  694. * ------[ first line different ]------
  695. 21895 CALL QuickTPut2 ("Sorry, No Upload Space.  Try Again Tomorrow.") : _ ' UG070501
  696.       RETURN
  697. '
  698. ' *  MAIN FILE SYSTEM ERROR TRAP - ALL ERRORS PASS THROUGH THIS ROUTINE
  699. '
  700. '  (formerly lines 13000 to 13500 in RBBS-PC.BAS
  701. * REPLACING old line(s) by new
  702. 21900 IF ZDebug THEN _
  703.          ZOutTxt$ = "RBBSSUB5 DEBUG Error Trap Entry ERL=" + _
  704.               STR$(ZWasEL) + _
  705.               " ERR=" + _
  706.               STR$(ZErrCode) : _
  707.          IF ZPrinter THEN _
  708.             CALL Printit(ZOutTxt$) _
  709.          ELSE CALL LPrnt(ZOutTxt$,1)
  710.       IF ZWasEL = 20126 AND ZErrCode = 53 THEN _
  711.          GOTO 20142
  712.       IF ZWasEL = 20242 AND ZErrCode = 62 THEN _
  713.          CALL UpdtCalr (ZFileSecFile$ + " bad format!",2) : _
  714.          GOTO 20247
  715.       IF ZWasEL = 20263 THEN _
  716.          ZOutTxt$ = "<Download aborted>" : _
  717.          DnldCompleted = ZFalse : _
  718.          GOTO 20390
  719.       IF ZWasEL = 20560 AND ZErrCode = 67 THEN _
  720.          GOTO 20451
  721.       IF ZWasEL = 20560 AND ZErrCode = 70 THEN _
  722.          IF VAL(ZFreeSpace$) > 1999 THEN _
  723.             GOTO 20610 _
  724.          ELSE GOSUB 21895 : _
  725.               GOTO 21700
  726.       IF ZWasEL = 20620 THEN _
  727.          GOTO 20670
  728.       IF ZWasEL = 20650 THEN _
  729.          GOTO 20670
  730.       IF ZWasEL = 20736 AND ZErrCode = 53 THEN _
  731.          GOTO 21700
  732.       IF ZWasEL = 20900 AND ZErrCode = 75 THEN _
  733.          GOTO 21230
  734.       IF ZWasEL = 20900 AND ZErrCode = 70 THEN _
  735.          GOSUB 21895 : _
  736.          GOTO 21230
  737.       IF ZWasEL = 21131 OR ZWasEL = 21220 THEN _
  738.          ZErrCode = 0 : _
  739.          GOTO 21230
  740.       IF ZWasEL = 21480 THEN _
  741.          CALL LogError : _
  742.          IF ZErrCode = 57 THEN _
  743. * ------[ first line different ]------
  744.             CALL QuickTPut2 ("Error Reading File.  Aborting Download.") : _ ' UG070501
  745.             DnldCompleted = ZFalse : _
  746.             GOTO 21230
  747. * REPLACING old line(s) by new
  748. 63110 WasX$ = LEFT$(ZOutTxt$(2),1)         ' ZWasSL = Security Level
  749.       CALL CheckInt (ZOutTxt$(2))
  750.       IF ZErrCode > 0 THEN _
  751.          GOTO 63105
  752.       IF WasX$ = "+" OR WasX$ = "-" THEN _
  753.          ZWasA = ZUserSecLevel + ZTestedIntValue _
  754.       ELSE ZWasA = ZTestedIntValue
  755.       IF ZWasA < ZSysopSecLevel THEN _
  756.          ZAdjustedSecurity = (ZWasA <> ZUserSecLevel) : _
  757.          IF ZAdjustedSecurity THEN _
  758.             ZUserSecLevel = ZWasA : _
  759.             MID$(ZUserRecord$,47,2) = MKI$(ZWasA) : _
  760. * ------[ first line different ]------
  761.             CALL QuickTPut2 ("Door Changed Your Security Level to" + STR$(ZWasA)) : _ ' UG070501
  762.             CALL UpdtCalr ("Door reset security to "+STR$(ZWasA),2)
  763.       GOTO 63105
  764. * REPLACING old line(s) by new
  765. 63470 ' $SUBTITLE: 'SetPrompt - sub to set prompts based on user security'
  766. ' $PAGE
  767. '
  768. '  NAME    -- SetPrompt
  769. '
  770. '  INPUTS  -- PARAMETER           MEANING
  771. '             ZBegMain          POSITION START OF MAIN CMDS
  772. '             ZBegFile          POSITION START OF FILE CMDS
  773. '             ZBegUtil          POSITION START OF UTIL CMDS
  774. '             ZBegLibrary       POSITION START OF Library CMDS
  775. '
  776. '  OUTPUTS -- PRESENT.OPTS$         DISPLAY WHAT USER CAN DO (1st)
  777. '             CALLERS.OPTS$         DISPLAY WHAT USER CAN DO (2nd)
  778. '             ZMainOpts$            MAIN OPTS USER CAN DO
  779. '             ZFileOpts$            FILE OPTS USER CAN DO
  780. '             ZUtilOpts$            UTIL OPTS USER CAN DO
  781. '             ZLibOpts$         Library OPTS USER CAN DO
  782. '
  783. '  PURPOSE -- Sets command line display of what user can do by
  784. '             section and display of what all user can do
  785. '
  786.       SUB SetPrompt STATIC
  787.       First = ZBegMain
  788.       Last = ZBegFile - 1
  789.       CALL SetOpts (ZMainOpts$,ZInvalidMainOpts$,First,Last)
  790.       First = ZBegFile
  791.       Last = ZBegUtil - 1
  792.       CALL SetOpts (ZFileOpts$,ZInvalidFileOpts$,First,Last)
  793.       First = ZBegUtil
  794.       Last = ZBegLibrary - 1
  795.       CALL SetOpts (ZUtilOpts$,ZInvalidUtilOpts$,First,Last)
  796.       First = ZBegLibrary
  797.       Last = ZBegLibrary + 6
  798.       CALL SetOpts (ZLibOpts$,ZInvalidLibraryOpts$,First,Last)
  799.       First = 50
  800.       Last = 56
  801.       CALL SetOpts (SysOpt$,ZInvalidSysOpts$,First,Last)
  802.       First = 46
  803.       Last = 49
  804.       CALL SetOpts (GlobalOpts$,InvalidGlobalOpts$,First,Last)
  805.       IF LEN(SysOpt$) > 0 THEN _
  806.          ZSystemOpts$ = "Sysop: " + _
  807.                         SysOpt$
  808.       ZMainOpts$ = GlobalOpts$ + ZMainOpts$ + _
  809.                    MID$(ZAllOpts$,INSTR(ZOrigCommands$,"G"),1)
  810.       ZFileOpts$ = GlobalOpts$ + _
  811.                    ZFileOpts$
  812.       ZUtilOpts$ = GlobalOpts$ + _
  813.                    ZUtilOpts$
  814.       ZLibOpts$ = GlobalOpts$ + _
  815.                       ZLibOpts$
  816.       CALL SortString (SysOpt$)
  817.       CALL SortString (ZMainOpts$)
  818.       ZMainOpts$ = ZMainOpts$ + _
  819.                    SysOpt$
  820.       CALL SortString (ZFileOpts$)
  821.       CALL SortString (ZUtilOpts$)
  822.       CALL SortString (ZLibOpts$)
  823.       CALL AddCommas (ZMainOpts$)
  824.       CALL AddCommas (ZFileOpts$)
  825.       CALL AddCommas (ZUtilOpts$)
  826.       CALL AddCommas (ZLibOpts$)
  827. * ------[ first line different ]------
  828.       ZDirPrompt$ = "What Directories (" + _
  829.          MID$("U)pload,A)ll,P)ersonal,L)ist,E)xtended +/-,[Q]uit)", _
  830.          8 * (ZUserSecLevel => ZMinSecToView) + 9)                   ' UG070501
  831.       ZQuitPromptExpert$ = "Quit C,S, or to F,[M],U,@"               ' UG070501
  832.       ZQuitPromptNovice$ = "Quit C)onference, S)ession or to Section " + _ ' UG070501
  833.                             "F)ile, [M]ain, U)til or @)Library"
  834.       ZQuitList$ = "FMUS@C"
  835.       IF ZUserSecLevel < ZOptSec(18) THEN _
  836.          ZQuitPromptExpert$ = LEFT$(ZQuitPromptExpert$,23) : _
  837.          ZQuitPromptNovice$ = LEFT$(ZQuitPromptNovice$,61) : _
  838.          MID$(ZQuitList$,5) = " "
  839.       IF ZUserSecLevel < ZOptSec(15) THEN _
  840.          ZQuitPromptExpert$ = LEFT$(ZQuitPromptExpert$,22) + _
  841.                                MID$(ZQuitPromptExpert$,25) : _
  842.          ZQuitPromptNovice$ = LEFT$(ZQuitPromptNovice$,56) + _
  843.                                MID$(ZQuitPromptNovice$,63) : _
  844.          MID$(ZQuitList$,3,1) = " "
  845.       IF ZUserSecLevel < ZOptSec(6) THEN _
  846.          ZQuitPromptExpert$ = LEFT$(ZQuitPromptExpert$,16) + _
  847.                                MID$(ZQuitPromptExpert$,19) : _
  848.          ZQuitPromptNovice$ = LEFT$(ZQuitPromptNovice$,41) + _
  849.                                MID$(ZQuitPromptNovice$,49) : _
  850.          MID$(ZQuitList$,1,1) = " "
  851.       CALL SetSection
  852.       END SUB
  853. * REPLACING old line(s) by new
  854. 63560 ' Set specified user flag
  855.       SUB SetUserFlag (RcvrRecNum, ChangeIndex, WhatGetting$) STATIC
  856.       FIELD #5, 128 AS ZUserRecord$
  857.       IF RcvrRecNum > 0 THEN _
  858.          ZUserFileIndex = RcvrRecNum : _
  859.          ZSubParm = 6 : _
  860.          CALL FileLock : _
  861.          GET 5, RcvrRecNum : _
  862.          WasX = CVI(MID$(ZUserRecord$,57,2)) : _
  863.          MID$(ZUserRecord$,57,2) = MKI$(WasX OR ChangeIndex) : _
  864.          PUT 5, RcvrRecNum : _
  865.          ZSubParm = 8 : _
  866.          CALL FileLock : _
  867. * ------[ first line different ]------
  868.          CALL NameCaps (ZWorkAra$(1)) : _                            ' UG070501
  869.          CALL QuickTPut1 (ZWorkAra$(1) + " Will Be Notified of New " + WhatGetting$ + ".") : _ ' UG070501
  870.          RcvrRecNum = 0
  871.       END SUB
  872. * REPLACING old line(s) by new
  873. * ------[ first line different ]------
  874. 63572 ZOutTxt$ = "Time Extension Reduced to"+ STR$(TimeToAdd) + _
  875.                  " Due to " + ZOutTxt$ + " Event." : _               ' UG070501
  876.       CALL RingCaller
  877.       END SUB
  878. * REPLACING old line(s) by new
  879. 63592 IF Showcur THEN _
  880.          CALL QuickTPut ("Change ",0) : _
  881.          CALL QuickTPut (Txt$,0) : _
  882.          CALL QuickTPut (" from ",0) : _
  883. * ------[ first line different ]------
  884.          CALL QuickTPut (MID$(STR$(CurVal),2),0) : _                 ' UG070501
  885.          CALL QuickTPut (" to (",0) _
  886.       ELSE CALL QuickTPut (Txt$,0) : _
  887.            CALL QuickTPut (" (",0)
  888.       CALL QuickTPut (MID$(STR$(MinVal),2),0)                        ' UG070501
  889.       CALL QuickTPut ("-",0)                                         ' UG070501
  890.       CALL QuickTPut (MID$(STR$(MaxVal),2),0)                        ' UG070501
  891.       ZOutTxt$ = ", [Q]uit)"                                         ' UG070501
  892. * REPLACING old line(s) by new
  893. * ------[ first line different ]------
  894. 63594 CALL UglyPopCmdStack                                           ' UG070501
  895.       Temp$ = ZUserIn$(ZAnsIndex)
  896.       CALL AllCaps (Temp$)
  897.       CALL Trim (Temp$)
  898.       IF ZSubParm > -1 AND Temp$ <> "Q" AND ZWasQ <> 0 THEN _
  899.          GOTO 63595
  900.       ZWasQ = 0
  901.       IF ShowCur THEN _
  902.          CALL QuickTPut2 (Txt$ + " Unchanged.")                      ' UG070501
  903.       EXIT SUB
  904. * REPLACING old line(s) by new
  905. 63595 CALL CheckInt (Temp$)
  906.       IF ZTestedIntValue < MinVal OR ZTestedIntValue > MaxVal THEN _
  907.          ZLastIndex = 0 : _
  908. * ------[ first line different ]------
  909.          CALL QuickTPut2 ("Invalid Value: Min" + STR$(MinVal) + ", Max" + STR$(MaxVal) + ".") : _ ' UG070501
  910.          GOTO 63592
  911.       IF ShowCur THEN _
  912.          CALL QuickTPut2 (Txt$ + " is Now Set to" + STR$(ZTestedIntValue) + ".") ' UG070501
  913.       END SUB
  914. * REPLACING old line(s) by new
  915. 63600 ' MarkItems - Converts a list of items ZUserIn$(), items ZAnsIndex
  916.       '             thru ZLastIndex, into a marked list MarkedList$.
  917.       '
  918.       SUB MarkItems (IsMarking,MarkedList$,MarkedDesc$) STATIC
  919.       IF NOT IsMarking THEN _
  920.          EXIT SUB
  921.       FOR Temp = ZAnsIndex to ZLastIndex
  922.          MarkedList$ = MarkedList$ + ZUserIn$(Temp) + ZCarriageReturn$
  923.       NEXT
  924.       CALL ReportMarked (MarkedList$,MarkedDesc$)
  925.       END SUB
  926.       SUB ReportMarked (MarkedList$,ListDesc$) STATIC
  927.       CALL FindLast (MarkedList$,ZCarriageReturn$,Temp,ZLastIndex)
  928. * ------[ first line different ]------
  929.       CALL QuickTPut2 ("There Are" + STR$(ZLastIndex) + " " + ListDesc$ + "s Now Marked.") ' UG070501
  930.       ZLastIndex = 0
  931.       END SUB
  932. * REPLACING old line(s) by new
  933. 63605 ' AskItems - general routine for asking for a list of items.
  934.       '            Calling program instructs what the valid commands
  935.       '            are (ValidCmnd$), what the actual user command is
  936.       '            (UserCmnd$), and whether to Mark the items.  Returns
  937.       '            list of items in ZUserIn$().   Supports lists for viewing,
  938.       '            downloading, and marking.   Gives option to operate
  939.       '            on marked when items have been previously marked.
  940.       '                Calling program tells what to mark (MarkedItems$)
  941.       '            and how to describe the items gathering (ItemDesc$).
  942.       '
  943.       SUB AskItems (ValidCmnd$,UserCmnd$,DoMark,ItemDesc$,MarkedItems$) STATIC
  944.       CALL AllCaps (UserCmnd$)
  945.       Temp = INSTR(ValidCmnd$,UserCmnd$)
  946.       IF Temp = 0 OR UserCmnd$ = "" THEN _
  947.          EXIT SUB
  948. * ------[ first line different ]------
  949.       Temp = INSTR("DVM",UserCmnd$)                                  ' UG070501
  950.       IF Temp = 1 THEN _                                             ' UG070501
  951.          ZOutTxt$ = "Download" _                                     ' UG070501
  952.       ELSE _                                                         ' UG070501
  953.          ZOutTxt$ = MID$("ViewMark",4*Temp-7,4)                      ' UG070501
  954.       ZOutTxt$ = ZOutTxt$ + " What " + ItemDesc$ + "s"               ' UG070501
  955.       IF Temp < 3 THEN IF MarkedItems$ <> "" THEN _
  956.          ZoutTxt$ = ZOutTxt$ + ", M)arked"
  957.       ZOutTxt$ = ZOutTxt$ + ZPressEnter$                             ' UG070501
  958.       ZStackC = ZTrue                                                ' UG070501
  959.       CALL UglyPopCmdStack                                           ' UG070501
  960.       IF ZWasQ > 0 AND DoMark AND Temp = 3 THEN _
  961.          CALL MarkItems (ZTrue,MarkedItems$,ItemDesc$)
  962.       END SUB
  963. * REPLACING old line(s) by new
  964. 63615 ' * Sets up next message base link *
  965.       SUB NextConf (DoJoin) STATIC
  966.       IF ZLinkedConf$ = "" OR (NOT DoJoin) THEN _
  967.          EXIT SUB
  968.       EndConf = INSTR(ZLinkedConf$,ZCarriageReturn$)
  969.       ZHomeConf$ = LEFT$(ZLinkedConf$,EndConf-1)
  970.       IF ZNonStop THEN _
  971. * ------[ first line different ]------
  972.          CALL QuickTPut1 ("Joining Linked Conference " + ZHomeConf$ + "...") _ ' UG070501
  973.       ELSE _                                                         ' UG070501
  974.          ZOutTxt$ = "Continue to Linked Conference " + ZHomeConf$ + " ([Y],N)" : _ ' UG070501
  975.          ZTurboKey = -ZTurboKeyUser : _
  976.          ZSubParm = 1 : _
  977.          CALL UglyTGet : _                                           ' UG070501
  978.          IF ZNo THEN _
  979.             ZHomeConf$ = "" : _
  980.             ZGlobalRead = ZFalse : _
  981.             EXIT SUB
  982.       ZLinkedConf$ = RIGHT$(ZLinkedConf$,LEN(ZLinkedConf$)-EndConf)
  983.       END SUB
  984. * REPLACING old line(s) by new
  985. 63635 ' * Reports who is doing echoing.  Formerly 9525 of rbbs-pc.bas
  986.       SUB ReportEcho STATIC
  987.       IF ZEchoer$ = "R" THEN _
  988. * ------[ first line different ]------
  989.          ZOutTxt$ =  "RBBS Now Set" _                                ' UG070501
  990.       ELSE IF ZEchoer$ = "C" THEN _                                  ' UG070501
  991.               ZOutTxt$ = "Please Set Your Communications Package" _  ' UG070501
  992.            ELSE ZOutTxt$ = "Intermediate Host Now Set"               ' UG070501
  993.       CALL QuickTPut2 (ZOutTxt$ + " to Echo.")                       ' UG070501
  994.       END SUB
  995. * REPLACING old line(s) by new
  996. 63640 ' * Welcomes caller on
  997.       SUB SayWelcome STATIC
  998.       LOCATE 24,1
  999.       CALL AMorPM
  1000.       ZUserLogonTime! = TIMER
  1001.       ZTimeLoggedOn$ = TIME$
  1002.       ZLinesPrinted = 0
  1003.       ZExpertUser = ZFalse
  1004.       CALL SetExpert
  1005.       ZOutTxt$ = ""
  1006.       IF ZMaxNodes > 1 THEN _
  1007.          ZOutTxt$ = " - Node " + ZNodeID$
  1008.       IF ZReliableMode THEN _
  1009. * ------[ first line different ]------
  1010.          ZOutTxt$ = ZOutTxt$ + " (ARQ)"                              ' UG070501
  1011.       IF ZRBBSName$ <> "" THEN _                                     ' UG070501
  1012.          CALL QuickTPut1 ("Welcome to " + ZRBBSName$ + ZOutTxt$)     ' UG070501
  1013.       CALL TestANSI
  1014.       ZTestParity = ZTrue
  1015.       ZStopInterrupts = ZTrue
  1016.       ZFileName$ = ZPreLog$
  1017.       CALL FlushCom (WasX$)
  1018.       ZCommPortStack$ = ""
  1019.       END SUB
  1020. * REPLACING old line(s) by new
  1021. 63650 ' * Sets privileges based on PASSWRDS file
  1022.       ' * Formerly 5135-5160 in RBBS-PC.BAS
  1023.       SUB SetPrivileges STATIC
  1024.       ZWasZ$ = ""
  1025.       CALL SrchPasswrds (Found)
  1026.       IF NOT Found THEN _
  1027.          ZTempTimeAllowed = ZMinsPerSessionDef : _
  1028.          ZTempMaxPerDay = ZMaxPerDayDef : _
  1029.          ZTempExpiredSec = ZExpiredSec : _
  1030.          ZMaxBank = ZMaxBankTimeDef _
  1031.       ELSE ZTimeLockSet = ZTempTimeLock : _
  1032.            ZDaysInRegPeriod = ZTempRegPeriod : _
  1033.            ZMaxBank = ZTempMaxBank
  1034.       ZMinsPerSession = ZTempTimeAllowed
  1035.       ZMaxPerDay = -(ZMaxPerDay * (ZTempMaxPerDay <= 0)) - _
  1036.                      (ZTempMaxPerDay * (ZTempMaxPerDay > 0))
  1037.       IF ZLimitMinsPerSession THEN _
  1038.          IF ZMinsPerSession > ZLimitMinsPerSession THEN _
  1039.             ZMinsPerSession = ZLimitMinsPerSession : _
  1040. * ------[ first line different ]------
  1041.             ZOutTxt$ = "An External Event is Coming Up in" + _
  1042.                        STR$(ZMinsPerSession) + _
  1043.                        " Minutes." : _                               ' UG070501
  1044.             CALL SkipLine(1) : _                                     ' UG070501
  1045.             CALL QuickTput(ZOutTxt$,1) : _                           ' UG070501
  1046.             ZOutTxt$ = "Your Time Online Has Been Shortened." : _    ' UG070501
  1047.             CALL RingCaller : _
  1048.             CALL SkipLine (1)                                        ' UG070501
  1049.       CALL SetSessionTime
  1050.       END SUB
  1051. * REPLACING old line(s) by new
  1052. 63710 CALL SetGraphic(2)
  1053.       ZHiLiteOff = ZFalse
  1054. * ------[ first line different ]------
  1055.       CALL QuickTPut1 ("ANSI Support Detected...")                   ' UG070501
  1056.       END SUB
  1057.